<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" href="../../../../style.css" type="text/css" media="screen">
<link rel="stylesheet" href="../../../../print.css" type="text/css" media="print">
<meta content="EventBroker,com.vivisectingmedia.framework.utils.EventBroker,broadcast,clearAllSubscriptions,subscribe,unsubscribe" name="keywords">
<title>com.vivisectingmedia.framework.utils.EventBroker</title>
</head>
<body>
<script type="text/javascript" language="javascript" src="../../../../asdoc.js"></script><script type="text/javascript" language="javascript" src="../../../../cookies.js"></script><script type="text/javascript" language="javascript">
<!--
				asdocTitle = 'EventBroker - Vivisecting Media Framework API';
				var baseRef = '../../../../';
				window.onload = configPage;
			--></script>
<table style="display:none" id="titleTable" cellspacing="0" cellpadding="0" class="titleTable">
<tr>
<td align="left" class="titleTableTitle">API Documentation</td><td align="right" class="titleTableTopNav"><a onclick="loadClassListFrame('../../../../all-classes.html')" href="../../../../package-summary.html">All&nbsp;Packages</a>&nbsp;|&nbsp;<a onclick="loadClassListFrame('../../../../all-classes.html')" href="../../../../class-summary.html">All&nbsp;Classes</a>&nbsp;|&nbsp;<a onclick="loadClassListFrame('../../../../index-list.html')" href="../../../../all-index-A.html">Index</a>&nbsp;|&nbsp;<a href="../../../../index.html?com/vivisectingmedia/framework/utils/EventBroker.html&amp;com/vivisectingmedia/framework/utils/class-list.html" id="framesLink1">Frames</a><a onclick="parent.location=document.location" href="" style="display:none" id="noFramesLink1">No&nbsp;Frames</a></td><td rowspan="3" align="right" class="titleTableLogo"><img alt="Adobe Logo" title="Adobe Logo" class="logoImage" src="../../../../images/logo.jpg"></td>
</tr>
<tr class="titleTableRow2">
<td align="left" id="subTitle" class="titleTableSubTitle">Class&nbsp;EventBroker</td><td align="right" id="subNav" class="titleTableSubNav"><a href="#methodSummary">Methods</a></td>
</tr>
<tr class="titleTableRow3">
<td colspan="2">&nbsp;</td>
</tr>
</table>
<script type="text/javascript" language="javascript">
<!--
if (!isEclipse() || window.name != ECLIPSE_FRAME_NAME) {titleBar_setSubTitle("Class EventBroker"); titleBar_setSubNav(false,false,false,false,false,false,true,false,false,false,false,false,false,false);}
--></script>
<div class="MainContent">
<table cellspacing="0" cellpadding="0" class="classHeaderTable">
<tr>
<td class="classHeaderTableLabel">Package</td><td><a onclick="javascript:loadClassListFrame('class-list.html')" href="package-detail.html">com.vivisectingmedia.framework.utils</a></td>
</tr>
<tr>
<td class="classHeaderTableLabel">Class</td><td class="classSignature">public class EventBroker</td>
</tr>
</table>
<p></p>
  The EventBroker is a remote Observer pattern that allows objects to subscribe to events that may be broadcasted by any item in the system.
  This utility is useful for situations where the broadcaster may not be a direct child or could change as the application is run.  The EventBroker
  allows for any object to subscribe to any event that is broadcasted through the broker.  The subscriber must provide a callback that accepts one
  argument of type Event.
  
  <p>The EventBroker is a Static object which means that all access must be made through the static methods.  The class is a facade Singleton which means
  that even though you are calling a static method a singleton object is defined so that only one instance of the EventBroker exists.</p>
   
  <p></p>
<br>
<hr>
</div>
<a name="methodSummary"></a>
<div class="summarySection">
<div class="summaryTableTitle">Public Methods</div>
<table id="summaryTableMethod" class="summaryTable " cellpadding="3" cellspacing="0">
<tr>
<th>&nbsp;</th><th colspan="2">Method</th><th class="summaryTableOwnerCol">Defined&nbsp;by</th>
</tr>
<tr class="">
<td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol">&nbsp;</td><td class="summaryTableSignatureCol">
<div class="summarySignature">
<a class="signatureLink" href="#broadcast()">broadcast</a>(event:Event):void</div>
<div class="summaryTableDescription">[static]
   Called by an object that wishes to broadcast an event.</div>
</td><td class="summaryTableOwnerCol">EventBroker</td>
</tr>
<tr class="">
<td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol">&nbsp;</td><td class="summaryTableSignatureCol">
<div class="summarySignature">
<a class="signatureLink" href="#clearAllSubscriptions()">clearAllSubscriptions</a>():void</div>
<div class="summaryTableDescription">[static]
   Removes all subscribed methods and objects from the EventBroker.</div>
</td><td class="summaryTableOwnerCol">EventBroker</td>
</tr>
<tr class="">
<td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol">&nbsp;</td><td class="summaryTableSignatureCol">
<div class="summarySignature">
<a class="signatureLink" href="#subscribe()">subscribe</a>(eventType:String, callback:Function):void</div>
<div class="summaryTableDescription">[static]
   Enables any object to subscribe to any event type by providing the Event type and the callback method the EventBroker should call
   when an Event of the requested type is broadcasted.</div>
</td><td class="summaryTableOwnerCol">EventBroker</td>
</tr>
<tr class="">
<td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol">&nbsp;</td><td class="summaryTableSignatureCol">
<div class="summarySignature">
<a class="signatureLink" href="#unsubscribe()">unsubscribe</a>(eventType:String, callback:Function):void</div>
<div class="summaryTableDescription">[static]
   Removes subscription of the specified event and callback.</div>
</td><td class="summaryTableOwnerCol">EventBroker</td>
</tr>
</table>
</div>
<script type="text/javascript" language="javascript">
<!--
showHideInherited();
--></script>
<div class="MainContent">
<a name="methodDetail"></a>
<div class="detailSectionHeader">Method detail</div>
<a name="broadcast()"></a>
<table cellspacing="0" cellpadding="0" class="detailHeader">
<tr>
<td class="detailHeaderName">broadcast</td><td class="detailHeaderParens">()</td><td class="detailHeaderType">method</td>
</tr>
</table>
<div class="detailBody">
<code>public static function broadcast(event:Event):void</code><p>
   Called by an object that wishes to broadcast an event.  All subscribers of the event type will be called and passed the provided Event.
    
   </p><span class="label">Parameters</span>
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="20px"></td><td><code><span class="label">event</span>:Event</code> &mdash; The Event to broadcast to the subscriber set.
   
   </td>
</tr>
</table>
</div>
<a name="clearAllSubscriptions()"></a>
<table cellspacing="0" cellpadding="0" class="detailHeader">
<tr>
<td class="detailHeaderName">clearAllSubscriptions</td><td class="detailHeaderParens">()</td><td class="detailHeaderType">method</td><td class="detailHeaderRule">&nbsp;</td>
</tr>
</table>
<div class="detailBody">
<code>public static function clearAllSubscriptions():void</code><p>
   Removes all subscribed methods and objects from the EventBroker. 
   
   </p></div>
<a name="subscribe()"></a>
<table cellspacing="0" cellpadding="0" class="detailHeader">
<tr>
<td class="detailHeaderName">subscribe</td><td class="detailHeaderParens">()</td><td class="detailHeaderType">method</td><td class="detailHeaderRule">&nbsp;</td>
</tr>
</table>
<div class="detailBody">
<code>public static function subscribe(eventType:String, callback:Function):void</code><p>
   Enables any object to subscribe to any event type by providing the Event type and the callback method the EventBroker should call
   when an Event of the requested type is broadcasted.  The callback must be a single argument method that accepts type Event.
    
   </p><span class="label">Parameters</span>
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="20px"></td><td><code><span class="label">eventType</span>:String</code> &mdash; The Event type to subscribe to.
   </td>
</tr>
<tr>
<td class="paramSpacer">&nbsp;</td>
</tr>
<tr>
<td width="20px"></td><td><code><span class="label">callback</span>:Function</code> &mdash; The method to call when the event type is broadcasted.
   
   </td>
</tr>
</table>
</div>
<a name="unsubscribe()"></a>
<table cellspacing="0" cellpadding="0" class="detailHeader">
<tr>
<td class="detailHeaderName">unsubscribe</td><td class="detailHeaderParens">()</td><td class="detailHeaderType">method</td><td class="detailHeaderRule">&nbsp;</td>
</tr>
</table>
<div class="detailBody">
<code>public static function unsubscribe(eventType:String, callback:Function):void</code><p>
   Removes subscription of the specified event and callback.
    
   </p><span class="label">Parameters</span>
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="20px"></td><td><code><span class="label">eventType</span>:String</code></td>
</tr>
<tr>
<td class="paramSpacer">&nbsp;</td>
</tr>
<tr>
<td width="20px"></td><td><code><span class="label">callback</span>:Function</code></td>
</tr>
</table>
</div>
<br>
<br>
<hr>
<br>
<p></p>
<center class="copyright">Portions created by James Polanco are Copyright (C) 2008 James Polanco. All Rights Reserved.</center>
</div>
</body>
</html>
<!--Portions created by James Polanco are Copyright (C) 2008 James Polanco. All Rights Reserved.-->
